package cn.tedu.Writer;

import java.io.*;

/**
 * Date：2022年01月
 * Author：程Sir
 * Name： JavaSE-API
 * Content:
 * - void write(int c) 写入单个字符。
 *
 * - void write(char[] cbuf) 写入字符数组。
 *
 * - abstract void write(char[] cbuf, int off, int len) 写入字符数组的某一部分,offff数组的开始索引,len写的字符个数。
 *
 * - void write(String str) 写入字符串。
 *
 * - void write(String str, int off, int len) 写入字符串的某一部分,offff字符串的开始索引,len写的字符个数。
 *
 * - void flush() 刷新该流的缓冲。
 *
 * - void close() 关闭此流，但要先刷新它。
 */
public class FileWriterDemo {
    public static void main(String[] args) throws IOException {
        // 1. 创建文件字符输出流对象
        FileWriter fileWriter = new FileWriter(new File("read.txt"),true);
        // 2. 创建文件字符输出流对象
        FileWriter fileWriter1 = new FileWriter("read.txt");
        System.out.println("对象创建结束");

        // 写入单个字符
        fileWriter.write(97);// a
        fileWriter.write(98);// b
        fileWriter.write(99);// c

        fileWriter.flush();

        // 写入多个字符 char[]
        char[] chars = {'1','2','3'};
        fileWriter.write(chars);
        fileWriter.flush();

        // 写入字符串
        fileWriter.write("\r\n");
        fileWriter.write("java Hello");
        fileWriter.write("\r\n");
        fileWriter.write("今天是个好日子！");
        fileWriter.flush();

        // 写入给定字符串的部分数据
        fileWriter.write("\r\n");
        fileWriter.write("今天是个好日子！",4,4);
        fileWriter.flush();

        // 关闭流连接释放系统资源
        fileWriter.close();

        // 思考：如何视同复制方式来实现文件、图片、视频复制！！！！


    }
}
